草庐IT

c++ - 从 COM 类继承

全部标签

c - 当我的 C 文件有其他依赖项时,如何准备 ./configure make make install?

编写/阅读代码似乎比准备部署脚本(例如./configure)和为我的C应用程序制作和安装要轻松得多。我如何制作./configure文件并为以下C代码制作文件?感谢您的宝贵支持。@file:main.c:#include#include#ifndef_WIN32#ifdefH323_H46018#include"h460/h460_std18.h"H460_FEATURE(Std18);H460_FEATURE(Std19);#endif#ifdefH323_H46023#include"h460/h460_std23.h"#endif#endif//_WIN32#definenew

c++ - 链接器说 _IsolationAwareLoadLibrary 未定义 - 有什么想法吗?

我在我的代码中添加了一些提升内容*,但链接阶段失败了:errorLNK2019:unresolvedexternalsymbol_IsolationAwareLoadLibraryA@4referencedinfunction"void*__cdeclboost::interprocess::winapi::load_library(charconst*)"(?load_library@winapi@interprocess@boost@@YAPAXPBD@Z)谁能帮我解决这个问题?kernel32.lib添加到链接器设置中。我搜索了_IsolationAwareLoadLibrary

c - 我可以在文件系统驱动程序中的 ZwCreateFile/InitializeObjectAttributes 中设置/检查用户定义的标志吗?

我正在Windows下开发文件系统驱动程序,我需要检查每个访问文件的文件属性。为此,我需要为每个文件执行额外的ZwCreateFile,但它会再次返回到我的调度例程。我可以使用InitializeObjectAttributes()或ZwCreateFile()设置哪些标志以便我可以稍后检查它以便我的过滤器可以绕过此类文件访问?谢谢。 最佳答案 已解决,尝试IoCreateFileSpecifyDeviceObjectHint、IoCreateFileEx或FtlCreateFile。

windows - 使用mfc42.dll 作为免注册COM?

我正在使用第三方Active-X控件,该控件需要在用户系统上安装特定版本的MFC42.dll。我正在尝试为我的产品的非管理员安装添加支持,并且必须安装例如mfc42.dll到系统文件夹并注册它显然使这不可能。第三方Active-X使用manifest文件作为免注册COM,想知道是否可以对MFC42.dll和MSVCRT.DLL做同样的操作,将它们存放在应用程序文件夹中?有人试过这个吗? 最佳答案 这是不可能的。MSVCRT和MFC42.dll不是COM对象,甚至不是win32程序集,因此不能使用无注册COM访问。您可以安装mfc42

windows - COM 服务器实例创建失败,出现错误 -2147024156

当我尝试使用CoCreateInstance创建DCOM服务器时,它失败了,错误代码为“-2147024156”。错误码对应的错误信息是“进程需要提升”。我应该怎么做才能解决这个问题? 最佳答案 AUACdialogappearsforBothClientandServerapplications是的,这就是问题所在。没有在远程机器上显示UAC对话框的机制。这将彻底打败UAC的意义。你必须让它在没有对话框的情况下工作。将list中的“requireAdministrator”替换为“asInvoker”并将代码调整为不需要权限。祝你

c - 如何捕获读写系统调用?

每当我尝试在我的pendrive上写任何东西时,都会生成一个写系统调用。我想要做的是,应该捕获这个写入调用,并且应该要求用户输入预先确定的密码(我可以在编码过程中自行定义)。请告诉我这是否可能?如果是,我应该怎么做? 最佳答案 WindowsDDK有一个在filesys\minifilter中Hook文件读取/写入/复制的示例,同时包含操作前和操作后回调,您应该为内核方面设置这些回调。对于gui部分,您需要一些东西来进行非阻塞旋转,直到驱动器发出事件信号,您可能还需要管道或映射内存View来传递数据

c - 使用 CreateProcess,无法获取 CREATE_NO_WINDOW 来抑制控制台

我想在不弹出控制台窗口的情况下启动一个进程(为简单起见,我们将使用记事本)。我确定我错过了一些非常简单的东西,这是我最简化的测试用例:#include#include#includevoid_tmain(intargc,TCHAR*argv[]){STARTUPINFOsi;PROCESS_INFORMATIONpi;ZeroMemory(&si,sizeof(si));si.cb=sizeof(si);ZeroMemory(&pi,sizeof(pi));//Startthechildprocess.if(!CreateProcess(NULL,//Nomodulename(usec

c - 绘画后 WM_PAINT 不显示

所以我正在绘制位图,这是我的代码:hdcMem=CreateCompatibleDC(hdc);SelectObject(hdcMem,g_hBitmap);GetObject(g_hBitmap,sizeof(bm),&bm);BitBlt(hdc,196-(bm.bmWidth/2),90,bm.bmWidth,bm.bmHeight,hdcMem,0,0,SRCCOPY);DeleteDC(hdcMem);有时,当我用这段代码绘制时,位图不显示。尽管如果我最小化/取消最小化窗口,则会显示位图。我很确定我的代码没有问题,那么我还应该做些什么吗?编辑:原来它不仅仅是位图,如果我用Te

调用 free 导致程序抛出异常

当我偶然发现以下问题时,我正在做作业。我应该使用C和WindowsAPI函数创建一个简单的多线程应用程序。每个线程都会运行一个简单的任务,所以我决定回收一些我做过的旧东西。我有一个头文件:http://pastebin.com/1aJFAwBg还有一个源文件:http://pastebin.com/L127FGhG然后在main中,我进行以下调用:LoadPoem();ProcessPoem();SavePoem();LoadPoem打开包含原始文件的文件,为输入分配一个缓冲区(变量loadedPoemBuffer)并将文件中的文本存储在其中。ProcessPoem然后为更改后的版本(

c - 从 dll 导出函数指针

我在一个dll文件中有一个函数指针(在实现中,而不是头文件中)。在exe源码中如何调用this指针指向的函数? 最佳答案 您可以导出返回指针的函数。header:typedefvoid(*MyPtr)();__declspec(dllexport)MyPtrGetMyPtr();来源:MyPtrGetMyPtr(){//retunrthefunctionpointerhere} 关于c-从dll导出函数指针,我们在StackOverflow上找到一个类似的问题: